iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 21
0
Mobile Development

iOS 工程師要懂的AR 開發,利用ARKit 製作APP系列 第 21

ARKit-跟我們的物件來些互動 - part 8

  • 分享至 

  • xImage
  •  

接下來開始啟動這個虛擬實境遊戲

func start() {
  DispatchQueue.main.async {
    self.startButton.isHidden = true
    self.suspendARPlaneDetection()
    self.hideARPlaneNodes()
    self.state = .pointToSurface
  }
}

這裡在開始啟動時,先隱藏按鈕, 然後不再偵測平面, 隱藏Plane Node,
最後改變其state 到開始的狀態, 執行

self.start()

再來如何重設平面呢?

func resetARSession() {
    let config = sceneView.session.configuration as! ARWorldTrackingConfiguration
    config.planeDetection = .horizontal
    sceneView.session.run(config,options: [.resetTracking, .removeExistingAnchors])
}

首先重新偵測平面, 再來新增一些config 的元素
.resetTracking -> 重啟ARKit
.removeExistingAnchors -> 移除所有之前所有偵測的anchor, 並且移除所有偵測的平面nodes


上一篇
ARKit-跟我們的物件來些互動 - part 7
下一篇
ARKit-跟我們的物件來些互動 - part 9
系列文
iOS 工程師要懂的AR 開發,利用ARKit 製作APP25
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言